Proof Planning and Program Synthesis: A Survey

نویسنده

  • Julian Richardson
چکیده

Proof planning is a knowledge-based automated theorem proving t~hnlque. It has been applied to a number of theorem-proving domains, for example: mathematical induction (Bundy et al.1991), and hardware verification (Cantu et a/.1996) (to pick two of the many). In the domain of program synthesis, it has been used to automate the synthesis of logic (Kraan et a/.1993a, Kraan et al.1993b, Basin et al.1993, Kraan 1994, Wiggins 1994, Lacey et a/.2000, Lacey 1999), functional (Armando et al.1999, Armando et a/.1998, Smaill & Green 1996, Richardson 1995), and imperative (Stark & Ireland 1999) programs. Program synthesis is difficult, and its automation is a good demonstration of the power and potential of proof planning. In this paper, we survey previous work on applying proof planning to program synthesis. This survey is not necessarily exhaustive -we have inevitably inadvertently overlooked a paper or two. Due to space considerations we completely omit any comparison with previous or other related non-proof planning synthesis research. In the following sections we first say a few words about proof planning, then summarise previous work applying proof planning to program synthesis, paying particular attention to the following: specification language and synthesis mechanism, language of derived programs, domain, platform, and level of automation. We contemplate the successes and difficulties of the different approaches, and speculate on directions for further research.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Middle - Out Reasoning for Synthesis and InductionIna

We develop two applications of middle-out reasoning in inductive proofs: Logic program synthesis and the selection of induction schemes. Middle-out reasoning as part of proof planning was rst suggested by Bundy et al Bundy et al 90a]. Middle-out reasoning uses variables to represent unknown terms and formulae. Uniication instantiates the variables in the subsequent planning, while proof plannin...

متن کامل

Max-planck-institut F Ur Informatik Middle-out Reasoning for Logic Program Synthesis K I N F O R M a T I K Im Stadtwald D 66123 Saarbr Ucken Germany Authors' Addresses

Logic programs can be synthesized as a by-product of the planning of their veri cation proofs. This is achieved by using higher-order variables at the proof planning level, which become instantiated in the course of planning. We illustrate two uses of such variables in proof planning for program synthesis, one for synthesis proper and one for the selection of induction schemes. We demonstrate t...

متن کامل

Middle-Out Reasoning for Logic Program Synthesis

Logic programs can be synthesized as a by-product of the planning of their verification proofs. This is achieved by using higher-order variables at the proof planning level, which become instantiated in the course of planning. We illustrate two uses of such variables in proof planning for program synthesis, one for synthesis proper and one for the selection of induction schemes. We demonstrate ...

متن کامل

A Unified View of Program Schemas and Proof Methods

Both proof planning and schema-guided program synthesis can be seen as a recursive problem decomposition process followed by a recursive solution composition process, with problems being either conjectures or specifications, and solutions being either tactics or programs. We thus develop a unified view of these two activities. This approach reveals an opportunity for identifying and integrating...

متن کامل

Logic Program Synthesis via Proof Planning

We propose a novel approach to automating the synthesis of logic programs: Logic programs are synthesized as a by-product of the planning of a verification proof. The approach is a two-level one: At the object level, we prove program verification conjectures in a sorted, first-order theory. The conjectures are of the form ∀args . prog(args ) ↔ spec(args ). At the meta-level, we plan the object-...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2002